home *** CD-ROM | disk | FTP | other *** search
/ Aminet 52 / Aminet 52 (2002)(GTI - Schatztruhe)[!][Dec 2002].iso / Aminet / game / patch / WHDIGamesU-Z.lzh / YogisGreatEscape.lha / YogisGreatEscapeHD / Install next >
Text File  |  2002-07-06  |  10KB  |  313 lines

  1. ;****************************
  2.  
  3. (set #sub-dir "data")            ;sub directory containing data files
  4. (set #readme-file "ReadMe")        ;name of readme file
  5. (set #man-file "Instructions")        ;name of manual file
  6. (set #hint-file "Hints")        ;name of hint file
  7. (set #sol-file "Solution")        ;name of solution file
  8. (set #highs-file "highs")        ;name of high scores file
  9. (set #last-file "YogisGreatEscape.4")    ;last file the imager should create
  10. (set #prefix @app-name)            ;name of slave, directory
  11.  
  12. (set #ico_suffix_00 "inf")        ;Icon suffixes (not all of these must exist)
  13. (set #ico_suffix_01 "magicwb")
  14. (set #ico_suffix_02 "romicon")
  15. (set #ico_suffix_03 "newicon")
  16. (set #ico_suffix_04 "newexot")
  17. (set #ico_suffix_05 "colicon")
  18. (set #ico_suffix_06 "colicon2")
  19. (set #ico_suffix_07 "colicon3")
  20. (set #ico_suffix_08 "colexot")
  21. (set #ico_suffix_09 "colcode")
  22. (set #ico_suffix_10 "colcfou")
  23. (set #ico_suffix_11 "colakira")
  24.  
  25. ;                 "123456789012345678901234567"
  26. (set #ico_desc_00 "Normal")        ;Icon descriptions (max 21 chars if you have > 9 entries, or 27 chars otherwise. These are renamed to "gamename.info" so no illegal characters like :/* etc)
  27. (set #ico_desc_01 "MagicWB Icon")
  28. (set #ico_desc_02 "RomIcon")
  29. (set #ico_desc_03 "NewIcon")
  30. (set #ico_desc_04 "NewIcon by Exotica")
  31. (set #ico_desc_05 "OS3.5 by Chris 1")
  32. (set #ico_desc_06 "OS3.5 by Chris 2")
  33. (set #ico_desc_07 "OS3.5 by Chris 3")
  34. (set #ico_desc_08 "OS3.5 by Christian")
  35. (set #ico_desc_09 "OS3.5 by Codetapper")
  36. (set #ico_desc_10 "OS3.5 by CFou")
  37. (set #ico_desc_11 "OS3.5 by Akira")
  38.  
  39. ;****************************
  40. ;----------------------------
  41. ; checks if given program is installed, if not abort install
  42. ; #program - to check
  43.  
  44. (procedure P_ChkRun
  45.   (if (= 0 (run ("cd SYS:\nWhich %s >NIL:" #program)))
  46.     ("")
  47.     (abort
  48.       (cat
  49.     "You must install \"" #program "\" first!\n"
  50.     "It must be accessible via the path.\n"
  51.     "You can find it in the WHDLoad package."
  52.       )
  53.     )
  54.   )
  55. )
  56.  
  57. ;----------------------------
  58. ; copy file including icon if exist
  59. ; #copy-file - name of file to copy
  60.  
  61. (procedure P_CopyFile
  62.   (if (exists #copy-file) (
  63.     (copyfiles
  64.       (help @copyfiles-help)
  65.       (source #copy-file)
  66.       (dest #dest)
  67.     )
  68.     (if (exists ("%s.info" #copy-file)) (
  69.       (copyfiles
  70.         (help @copyfiles-help)
  71.         (source ("%s.info" #copy-file))
  72.         (dest #dest)
  73.       )
  74.       (tooltype
  75.         (dest (tackon #dest #copy-file))
  76.         (noposition)
  77.       )
  78.     ))
  79.   ))
  80. )
  81.  
  82. ;****************************
  83.  
  84. (if (< @installer-version (+ (* 44 65536) 10))
  85.   (
  86.     (message
  87.       (cat
  88.         "Warning: your installer is outdated.\n"
  89.         "Some features of this installation won't be available, "
  90.         "such as icon show and drawer opening. "
  91.         "You have version " (/ @installer-version 65536) "." 
  92.         (BITAND @installer-version 65535) ", recommended is version 44.10. "
  93.         "The 'installer' 44.10 comes with OS 3.5 but is also contained in the NDK 3.9. "
  94.         "You may also use the InstallerNG by Jens Tröger."
  95.         "\n\n"
  96.         "The installers can be obtained from the net:\n"
  97.         "http://www.amiga.com/3.9/download/NDK3.9.lha\n"
  98.         "aminet:util/sys/InstallerNG.lha"
  99.       )
  100.     )
  101.     (set #newstuff 0)
  102.   )
  103.   (set #newstuff 1)
  104. )
  105.  
  106. (if (exists #readme-file)
  107.   (if (= 0 (run ("SYS:Utilities/Multiview %s" #readme-file)))
  108.     ("")
  109.     (run ("SYS:Utilities/More %s" #readme-file))
  110.   )
  111. )
  112.  
  113. (set #program "WHDLoad")
  114. (P_ChkRun)
  115.  
  116. (set #program "RawDIC")
  117. (P_ChkRun)
  118.  
  119. (if (= @user-level 2)
  120.   (
  121.     (set #CI_drive
  122.       (askchoice
  123.     (prompt "Select source drive for diskimages")
  124.     (default 0)
  125.     (choices "DF0:" "DF1:" "DF2:" "DF3:")
  126.     (help @askchoice-help)
  127.       )
  128.     )
  129.     (select #CI_drive
  130.       (set #CI_drive "DF0:")
  131.       (set #CI_drive "DF1:")
  132.       (set #CI_drive "DF2:")
  133.       (set #CI_drive "DF3:")
  134.     )
  135.     (set #ignore " IGNOREERRORS")
  136.   )
  137.   (set #CI_drive "DF0:")
  138.   (set #ignore "")
  139. )
  140.  
  141. (if (getenv "WHDLInstPath")
  142.   (set @default-dest (getenv "WHDLInstPath"))
  143. )
  144. (set #dest
  145.   (askdir
  146.     (prompt
  147.       (cat
  148.     "Where should \"" @app-name "\" be installed?\n"
  149.     "A drawer \"" #prefix "\" will be automatically created."
  150.       )
  151.     )
  152.     (help @askdir-help)
  153.     (default @default-dest)
  154.   )
  155. )
  156. (run ("setenv WHDLInstPath \"%s\"\ncopy ENV:WHDLInstPath ENVARC:" #dest))
  157. (set #dest (tackon #dest #prefix))
  158. (if (exists #dest) (
  159.   (set #choice
  160.     (askbool
  161.       (prompt
  162.         (cat
  163.           "\nDirectory \"" #dest "\" already exists.\n"
  164.           "Should it be deleted?"
  165.         )
  166.       )
  167.       (default 1)
  168.       (choices "Delete" "Skip")
  169.       (help @askbool-help)
  170.     )
  171.   )
  172.   (if (= #choice 1)
  173.     (delete #dest
  174.       (help @delete-help)
  175.       (all)
  176.     )
  177.   )
  178. ))
  179. (makedir #dest
  180.   (help @makedir-help)
  181.   (infos)
  182. )
  183.  
  184. ;----------------------------
  185.  
  186. (copyfiles
  187.   (help @copyfiles-help)
  188.   (source ("%s.Slave" #prefix))
  189.   (dest #dest)
  190. )
  191. (set #icon 0)
  192. (if (exists ("%s.%s" #prefix #ico_suffix_11)) ((set #icon 11)(set #icnt (+ 1 #icnt))(set #icon_11 #ico_desc_11)) (set #icon_11 ""))
  193. (if (exists ("%s.%s" #prefix #ico_suffix_10)) ((set #icon 10)(set #icnt (+ 1 #icnt))(set #icon_10 #ico_desc_10)) (set #icon_10 ""))
  194. (if (exists ("%s.%s" #prefix #ico_suffix_09)) ((set #icon 9) (set #icnt (+ 1 #icnt))(set #icon_09 #ico_desc_09)) (set #icon_09 ""))
  195. (if (exists ("%s.%s" #prefix #ico_suffix_08)) ((set #icon 8) (set #icnt (+ 1 #icnt))(set #icon_08 #ico_desc_08)) (set #icon_08 ""))
  196. (if (exists ("%s.%s" #prefix #ico_suffix_07)) ((set #icon 7) (set #icnt (+ 1 #icnt))(set #icon_07 #ico_desc_07)) (set #icon_07 ""))
  197. (if (exists ("%s.%s" #prefix #ico_suffix_06)) ((set #icon 6) (set #icnt (+ 1 #icnt))(set #icon_06 #ico_desc_06)) (set #icon_06 ""))
  198. (if (exists ("%s.%s" #prefix #ico_suffix_05)) ((set #icon 5) (set #icnt (+ 1 #icnt))(set #icon_05 #ico_desc_05)) (set #icon_05 ""))
  199. (if (exists ("%s.%s" #prefix #ico_suffix_04)) ((set #icon 4) (set #icnt (+ 1 #icnt))(set #icon_04 #ico_desc_04)) (set #icon_04 ""))
  200. (if (exists ("%s.%s" #prefix #ico_suffix_03)) ((set #icon 3) (set #icnt (+ 1 #icnt))(set #icon_03 #ico_desc_03)) (set #icon_03 ""))
  201. (if (exists ("%s.%s" #prefix #ico_suffix_02)) ((set #icon 2) (set #icnt (+ 1 #icnt))(set #icon_02 #ico_desc_02)) (set #icon_02 ""))
  202. (if (exists ("%s.%s" #prefix #ico_suffix_01)) ((set #icon 1) (set #icnt (+ 1 #icnt))(set #icon_01 #ico_desc_01)) (set #icon_01 ""))
  203. (if (exists ("%s.%s" #prefix #ico_suffix_00)) ((set #icon 0) (set #icnt (+ 1 #icnt))(set #icon_00 #ico_desc_00)) (set #icon_00 ""))
  204. (procedure P_Icon
  205.   (copyfiles
  206.     (help @copyfiles-help)
  207.     (source ("%s.%s" #prefix #icon-suf))
  208.     (newname ("%s.info" #icon-name))
  209.     (dest #icon-dir)
  210.   )
  211.   (tooltype
  212.     (dest (tackon #icon-dir #icon-name))
  213.     (noposition)
  214.   )
  215. )
  216. (if (> #icnt 1) (
  217.   (if (= #newstuff 1) (
  218.     (set #icon-dir ("T:%s Icons" #prefix))
  219.     (makedir #icon-dir
  220.       (help @makedir-help)
  221.     )
  222.     (if #icon_00 ((set #icon-suf #ico_suffix_00) (set #icon-name #ico_desc_00) (P_Icon)))
  223.     (if #icon_01 ((set #icon-suf #ico_suffix_01) (set #icon-name #ico_desc_01) (P_Icon)))
  224.     (if #icon_02 ((set #icon-suf #ico_suffix_02) (set #icon-name #ico_desc_02) (P_Icon)))
  225.     (if #icon_03 ((set #icon-suf #ico_suffix_03) (set #icon-name #ico_desc_03) (P_Icon)))
  226.     (if #icon_04 ((set #icon-suf #ico_suffix_04) (set #icon-name #ico_desc_04) (P_Icon)))
  227.     (if #icon_05 ((set #icon-suf #ico_suffix_05) (set #icon-name #ico_desc_05) (P_Icon)))
  228.     (if #icon_06 ((set #icon-suf #ico_suffix_06) (set #icon-name #ico_desc_06) (P_Icon)))
  229.     (if #icon_07 ((set #icon-suf #ico_suffix_07) (set #icon-name #ico_desc_07) (P_Icon)))
  230.     (if #icon_08 ((set #icon-suf #ico_suffix_08) (set #icon-name #ico_desc_08) (P_Icon)))
  231.     (if #icon_09 ((set #icon-suf #ico_suffix_09) (set #icon-name #ico_desc_09) (P_Icon)))
  232.     (if #icon_10 ((set #icon-suf #ico_suffix_10) (set #icon-name #ico_desc_10) (P_Icon)))
  233.     (if #icon_11 ((set #icon-suf #ico_suffix_11) (set #icon-name #ico_desc_11) (P_Icon)))
  234.     (openwbobject #icon-dir)
  235.   ))
  236.   (set #icon
  237.     (askchoice
  238.       (prompt "\nWhich icon would you like to install?\n")
  239.       (choices #icon_00 #icon_01 #icon_02 #icon_03 #icon_04 #icon_05 #icon_06 #icon_07 #icon_08 #icon_09 #icon_10 #icon_11)
  240.       (default #icon)
  241.       (help @askchoice-help)
  242.     )
  243.   )
  244.   (if (= #newstuff 1) (
  245.     (closewbobject #icon-dir)
  246.     (delete #icon-dir
  247.       (help @delete-help)
  248.       (all)
  249.     )
  250.   ))
  251. ))
  252. (select #icon
  253.   (set #icon #ico_suffix_00)
  254.   (set #icon #ico_suffix_01)
  255.   (set #icon #ico_suffix_02)
  256.   (set #icon #ico_suffix_03)
  257.   (set #icon #ico_suffix_04)
  258.   (set #icon #ico_suffix_05)
  259.   (set #icon #ico_suffix_06)
  260.   (set #icon #ico_suffix_07)
  261.   (set #icon #ico_suffix_08)
  262.   (set #icon #ico_suffix_09)
  263.   (set #icon #ico_suffix_10)
  264.   (set #icon #ico_suffix_11)
  265. )
  266. (copyfiles
  267.   (help @copyfiles-help)
  268.   (source ("%s.%s" #prefix #icon))
  269.   (newname ("%s.info" #prefix))
  270.   (dest #dest)
  271. )
  272. (tooltype
  273.   (dest (tackon #dest #prefix))
  274.   (setdefaulttool "WHDLoad")
  275.   (setstack 10240)
  276.   (noposition)
  277. )
  278. (set #copy-file #readme-file)
  279. (P_CopyFile)
  280. (set #copy-file #man-file)
  281. (P_CopyFile)
  282. (set #copy-file #hint-file)
  283. (P_CopyFile)
  284. (set #copy-file #sol-file)
  285. (P_CopyFile)
  286. (set #dest-org #dest)
  287. (if (= #sub-dir "")
  288.   ("")
  289.   (
  290.     (set #dest (tackon #dest #sub-dir))
  291.     (makedir #dest
  292.       (help @makedir-help)
  293.     )
  294.   )
  295. )
  296. (set #copy-file #highs-file)
  297. (P_CopyFile)
  298. (copyfiles
  299.   (help @copyfiles-help)
  300.   (source ("%s.islave" #prefix))
  301.   (dest #dest)
  302. )
  303. (working "calling RawDIC...")
  304. (run ("CD \"%s\"\nRawDIC SLAVE=%s.islave SOURCE=%s%s\nDelete %s.islave" #dest #prefix #CI_drive #ignore #prefix))
  305. (if (exists (tackon #dest #last-file))
  306.   ("")
  307.   (abort "Diskimaging was not successful!\nRawDIC was unable to create all needed files!")
  308. )
  309. (if (= #newstuff 1)
  310.   (openwbobject #dest-org)
  311. )
  312. (exit)
  313.